package com.wench.design.pattern.template_method;

/**
 * 抽象类（定义模板方法和基本方法）
 *
 * @author WenchGuo
 * @date 2021/11/26 15:15
 */
public abstract class AbstractClass {

    public final void cookProcess() {
        pourOil();
        heatOil();
        pourVegetable();
        pourSauce();
        fry();
    }

    public void pourOil() {
        System.out.println("倒油...");
    }

    public void heatOil() {
        System.out.println("热油...");
    }

    /**
     * 下蔬菜
     */
    public abstract void pourVegetable();

    /**
     * 倒调味料
     */
    public abstract void pourSauce();

    public void fry() {
        System.out.println("炒啊炒啊炒到熟啊...");
    }
}
